home *** CD-ROM | disk | FTP | other *** search
/ All for Cell Phones: Sony Ericsson / Sony-Ericsson 2004.iso / Java / Micro Mail / MicroMail.jar / MicroCache.class (.txt) < prev    next >
Encoding:
Java Class File  |  2001-09-14  |  2.9 KB  |  182 lines

  1. import java.util.Vector;
  2.  
  3. public class MicroCache {
  4.    static Vector addressBook = new Vector();
  5.    static Vector inbox = new Vector();
  6.    static Vector outbox = new Vector();
  7.    static Vector sent = new Vector();
  8.    static Vector deleted = new Vector();
  9.    static boolean addressBookValid = false;
  10.    static boolean inboxValid = false;
  11.    static boolean outboxValid = false;
  12.    static boolean sentValid = false;
  13.    static boolean deletedValid = false;
  14.  
  15.    public static void deleteAddress(Address var0, int var1) {
  16.       AddressHandler.deleteRecord(var0.ID);
  17.       addressBook.removeElementAt(var1);
  18.    }
  19.  
  20.    public static void deleteBox(int var0) {
  21.       MessageHandler.deleteBox(var0);
  22.       Vector var1 = getBoxVector(var0);
  23.       var1.removeAllElements();
  24.       System.gc();
  25.    }
  26.  
  27.    public static void deleteMessage(int var0, int var1, Message var2) {
  28.       if (var0 == 4) {
  29.          MessageHandler.deleteRecord(var0, var2.ID);
  30.          deleted.removeElementAt(var1);
  31.       } else {
  32.          Vector var3 = getBoxVector(var0);
  33.          MessageHandler.deleteRecord(var0, var2.ID);
  34.          var3.removeElementAt(var1);
  35.          var2.ID = -1;
  36.          storeMessage(4, var2, -1);
  37.       }
  38.  
  39.    }
  40.  
  41.    public static int getBoxSize(int var0) {
  42.       int var1 = 0;
  43.       switch (var0) {
  44.          case 1:
  45.             var1 = inbox.size();
  46.             break;
  47.          case 2:
  48.             var1 = outbox.size();
  49.             break;
  50.          case 3:
  51.             var1 = sent.size();
  52.             break;
  53.          case 4:
  54.             var1 = deleted.size();
  55.       }
  56.  
  57.       return var1;
  58.    }
  59.  
  60.    private static Vector getBoxVector(int var0) {
  61.       switch (var0) {
  62.          case 1:
  63.             return inbox;
  64.          case 2:
  65.             return outbox;
  66.          case 3:
  67.             return sent;
  68.          case 4:
  69.             return deleted;
  70.          default:
  71.             return null;
  72.       }
  73.    }
  74.  
  75.    public static Message getMessage(int var0, int var1) {
  76.       Object var2 = null;
  77.       MessageHandler.openFile(var0);
  78.       Message var3 = MessageHandler.getMessage(var1);
  79.       MessageHandler.closeFile();
  80.       return var3;
  81.    }
  82.  
  83.    public static MessageListItem getMessageListItem(int var0, int var1) {
  84.       Object var2 = null;
  85.       Vector var3 = getBoxVector(var0);
  86.       MessageListItem var4 = (MessageListItem)var3.elementAt(var1);
  87.       return var4;
  88.    }
  89.  
  90.    public static void markRead(int var0, Message var1, int var2, boolean var3) {
  91.       if (var3 && var1.unread || !var3 && !var1.unread) {
  92.          var1.unread = var3 ^ true;
  93.          storeMessage(var0, var1, var2);
  94.       }
  95.  
  96.    }
  97.  
  98.    public static void moveMessageToSent(int var0, Message var1) {
  99.       MessageHandler.deleteRecord(2, var1.ID);
  100.       outbox.removeElementAt(var0);
  101.       var1.ID = -1;
  102.       storeMessage(3, var1, -1);
  103.    }
  104.  
  105.    public static void refreshAddressBook() {
  106.       if (!addressBookValid) {
  107.          AddressHandler.openFile();
  108.          addressBook = AddressHandler.getAddressBook();
  109.          AddressHandler.closeFile();
  110.          addressBookValid = true;
  111.       }
  112.  
  113.    }
  114.  
  115.    public static void refreshMessageList(int var0) {
  116.       switch (var0) {
  117.          case 1:
  118.             if (!inboxValid) {
  119.                MessageHandler.openFile(1);
  120.                inbox = MessageHandler.getMessageListByBox(1);
  121.                inboxValid = true;
  122.                MessageHandler.closeFile();
  123.             }
  124.             break;
  125.          case 2:
  126.             if (!outboxValid) {
  127.                MessageHandler.openFile(2);
  128.                outbox = MessageHandler.getMessageListByBox(2);
  129.                outboxValid = true;
  130.                MessageHandler.closeFile();
  131.             }
  132.             break;
  133.          case 3:
  134.             if (!sentValid) {
  135.                MessageHandler.openFile(3);
  136.                sent = MessageHandler.getMessageListByBox(3);
  137.                sentValid = true;
  138.                MessageHandler.closeFile();
  139.             }
  140.             break;
  141.          case 4:
  142.             if (!deletedValid) {
  143.                MessageHandler.openFile(4);
  144.                deleted = MessageHandler.getMessageListByBox(4);
  145.                deletedValid = true;
  146.                MessageHandler.closeFile();
  147.             }
  148.       }
  149.  
  150.    }
  151.  
  152.    public static void storeAddress(Address var0, int var1) {
  153.       AddressHandler.openFile();
  154.       AddressHandler.storeAddress(var0);
  155.       AddressHandler.closeFile();
  156.       if (var1 > -1) {
  157.          addressBook.setElementAt(var0, var1);
  158.       } else {
  159.          addressBook.addElement(var0);
  160.       }
  161.  
  162.    }
  163.  
  164.    public static void storeMessage(int var0, Message var1, int var2) {
  165.       MessageHandler.openFile(var0);
  166.       MessageHandler.storeMessage(var1, var0);
  167.       MessageHandler.closeFile();
  168.       Vector var3 = getBoxVector(var0);
  169.       MessageListItem var4 = new MessageListItem();
  170.       var4.subject = var1.subject;
  171.       var4.unread = var1.unread;
  172.       if (var2 > -1) {
  173.          var3.setElementAt(var4, var2);
  174.       } else {
  175.          var3.addElement(var4);
  176.       }
  177.  
  178.       Object var5 = null;
  179.       Object var6 = null;
  180.    }
  181. }
  182.